package com.xlh.dto.system;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * 用户流水结果集
 * <p>
 * Created by lx on 2019/2/25.
 */
@Data
public class OperationUserDTO {

    @ApiModelProperty(value = "流水id")
    private Long id;

    @ApiModelProperty(value = "用户id")
    private Long userId;

    @ApiModelProperty(value = "登陆的ip")
    private String ip;

    @ApiModelProperty(value = "登陆的国家")
    private String country;

    @ApiModelProperty(value = "登陆的省份")
    private String region;

    @ApiModelProperty(value = "登陆的城市")
    private String city;

    @ApiModelProperty(value = "用户账号的省份")
    private String province;

    @ApiModelProperty(value = "用户账号的学校")
    private String schoolName;

    @ApiModelProperty(value = "申请人")
    private String applicant;

    @ApiModelProperty(value = "销毁时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy/MM/dd")
    private Date destroyTime;

    @ApiModelProperty(value = "姓名")
    private String name;

    @ApiModelProperty(value = "学号")
    private String userNumber;

    @ApiModelProperty(value = "角色名称")
    @JsonIgnore
    private Integer role;

    @ApiModelProperty(value = "角色")
    private String roleName;

    @ApiModelProperty(value = "状态")
    @JsonIgnore
    private Integer status;

    @ApiModelProperty(value = "注册时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy/MM/dd")
    private Date createTime;

    @ApiModelProperty(value = "请求时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date operationCreateTime;

    @ApiModelProperty(value = "状态（异常、正常、异常已销户）")
    private String statusName = "";

    @ApiModelProperty(value = "是否显示销户 true：显示 false：不显示")
    private Boolean showAccountCancellation = false;

    @ApiModelProperty(value = "请求名称")
    private String eventDesc;

    @ApiModelProperty(value = "事件码值")
    private String eventCode;

    @JsonIgnore
    @ApiModelProperty(value = "备注")
    private String remark;

    @JsonIgnore
    @ApiModelProperty(value = "对象id")
    private Long objId;

    @JsonIgnore
    @ApiModelProperty(value = "课程名称")
    private String courseName;

    @JsonIgnore
    @ApiModelProperty(value = "章节名称")
    private String chapterName;

}
